Read Data | Write Data |
Read ID | Format a Track |
Read Deleted Data | Write Deleted Data |
Read a Track | Seek |
Scan Equal | Recalibrate (Restore to track 0) |
Scan High or Equal | Sense Interrupt Status |
Scan Low or Equal | Sense Drive Status |
Specify |
A0 | /RD | /WR | FUNCTION |
---|---|---|---|
0 | 0 | 1 | Read Main Status Register |
0 | 1 | 0 | Illegal |
0 | 0 | 0 | Illegal |
1 | 0 | 0 | Illegal |
1 | 0 | 1 | Read from Data Register |
1 | 1 | 0 | Write into Data Register |
Bit Number | Name | Symbol | Description |
---|---|---|---|
DB0 | FDD 0 Busy | D0B | FDD number 0 is in the Seek mode |
DB1 | FDD 1 Busy | D1B | FDD number 1 is in the Seek mode |
DB2 | FDD 2 Busy | D2B | FDD number 2 is in the Seek mode |
DB3 | FDD 3 Busy | D3B | FDD number 3 is in the Seek mode |
DB5 | Non-DMA mode | NDM | The FDC is in the non-DMA mode. This bit is set only during the execution phase in non-DMA mode. Transition to "0" state indicates execution phase has ended. |
DB6 | Data Input/Output | DIO | Indicates direction of data transfer between FDC and Data Register. If DIO = "1" then transfer is from Data Register to the processor. If DIO = "0", then transfer is from the processor to the data register. |
DB7 | Request for Master | RQM | Indicates Data Register is ready to send or receive data to or from the processor. Both bits DIO and RQM should be used to perform the handshaking functions of "ready" and "direction" to the processor. |
PIN NO. | I/O | CONNECTION TO | DESCRIPTION | SYMBOL |
---|---|---|---|---|
1 | RST | I | µP | Reset: Places FDC in idle state. Resets output lines to FDD to "0" (low) |
2 | /RD | I ¹ | µP | Read: Control signal for transfer of data from FDC to Data Bus, when "0" (low). |
3 | /WR | I ¹ | µP | Write: Control signal for transfer of data to FDC via Data Bus, when "0" (low). |
4 | /CS | I | µP | Chip Select: IC selected when "0" (low), allowing /RD and /WR enabled. |
5 | A0 | I ¹ | µP | Data/Status Reg Select: Selects Data Reg (A0=1), or Status Reg (A0=0) content be send to Data Bus. |
6-13 | DB0-DB7 | I/O ¹ | µP | Data Bus: Bidirectional 8-bit Data Bus |
14 | DRQ | O | DMA | Data DMA Request: DMA Request is being made by FDC when DRQ "1" |
15 | /DACK | I | DMA | DMA Acknowledge: DMA cycle is active when "0" (low) and Controller is performing DMA transfer. |
16 | TC | I | DMA | Terminal Count: Indicates the termination of a DMA transfer when "1" (high) |
17 | IDX | I | FDD | Index: Indicates the beginning of a disk track |
18 | INT | O | µP | Interrupt: Interrupt request generated by FDC |
19 | CLK | I | Clock: Single Phase 8 Mhz Squarewave Clock | |
20 | GND | Ground: D.C. Power Return | ||
40 | Vcc | D.C. POWER +5v | ||
39 | /RW / SEEK | O | FDD | Read Write/SEEK: When "1" (high) Seek mode selected and when "0" Read/Write mode selected. |
38 | LCT/DIR | O | FDD | Low Current/Direction: Lowers write current on inner tracks in Read/Write mode, determines direction head will step in seek mode. |
37 | FR/STP | O | FDD | Fault Reset/Step: Resets fault FF in FDD in Read/Write mode, provides step pulses to move head to another cylinder in seek mode. |
36 | HDL | O | FDD | Head Load: Command which causes read/write head in FDD to contact diskette. |
35 | RDY | I | FDD | Ready: Indicates FDD is ready to send or receive data. |
34 | WP/TS | I | FDD | Write Protect/Two Side: Senses Write Protect status in Read/Write mode and Two side media in Seek mode. |
33 | FLT/TRK0 | I | FDD | Fault/Track 0: Senses FDD fault condition in Read/Write mode and Track 0 condition in Seek mode. |
31,32 | PS1,PS0 | O | FDD | Precompensation (pre-shift): Write precompensation status during MFM mode. Determines early, late and normal times. |
30 | WR DATA | O | FDD | Write data: Seial clock and data bits to FDD. |
28,29 | DS1,DS0 | O | FDD | Drive Select: Selects FDD unit |
27 | HDSEL | O | FDD | Head Select: Head 1 selected when "1" (high). Head 0 selected when "0" (low). |
26 | MFM | O | PLL | MFM Mode: MFM mode when "1", FM mode when "0" |
25 | WE | O | FDD | Write Enable: Enables write data into FDD |
24 | VCO | O | PLL | VCO Sync: Inhibits VCO in PLL when "0" (low), enables VCO when "1". |
23 | RD DATA | I | FDD | Read Data: Read data from FDD containing clock and data bits |
22 | DW | I | PLL | Data window. Generated by PLL, and used to sample data from FDD |
21 | WR CLK | I | Write Clock: Write data rate to FDD FM = 500Khz, MFM = 1 Mhz, with a pulse width of 250ns for both FM and MFM. Must be enabled for all operations, both Read and Write. |
Command Phase | The FDC receives all information required to perform a particular operation from the processor. |
Execution Phase | The FDC performs the operation it was instructed to do. |
Result Phase | After completion of the operation, status and other housekeeping information are made available to the processor. |
READ DATA | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Phase | R/W | Data Bus | Remarks | ||||||||
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||||
Command | W | MT | MFM | SK | 0 | 0 | 1 | 1 | 0 | Command Codes | |
W | 0 | 0 | 0 | 0 | 0 | HDS | DS1 | DS0 | |||
W |
|
Sector ID Information prior to command execution | |||||||||
W |
| ||||||||||
W |
| ||||||||||
W |
| ||||||||||
W |
|
||||||||||
W |
| ||||||||||
W |
| ||||||||||
Execution | Data transfer between the FDD and main system | ||||||||||
Result | R |
|
Status information after command execution | ||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
Sector ID information after command execution | |||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
READ DELETED DATA | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Phase | R/W | Data Bus | Remarks | ||||||||
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||||
Command | W | MT | MFM | SK | 0 | 1 | 1 | 0 | 0 | Command Codes | |
W | 0 | 0 | 0 | 0 | 0 | HDS | DS1 | DS0 | |||
W |
|
Sector ID Information prior to command execution | |||||||||
W |
| ||||||||||
W |
| ||||||||||
W |
| ||||||||||
W |
|
||||||||||
W |
| ||||||||||
W |
| ||||||||||
Execution | Data transfer between the FDD and main system | ||||||||||
Result | R |
|
Status information after command execution | ||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
Sector ID information after command execution | |||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
WRITE DATA | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Phase | R/W | Data Bus | Remarks | ||||||||
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||||
Command | W | MT | MFM | 0 | 0 | 0 | 1 | 0 | 1 | Command Codes | |
W | 0 | 0 | 0 | 0 | 0 | HDS | DS1 | DS0 | |||
W |
|
Sector ID Information prior to command execution | |||||||||
W |
| ||||||||||
W |
| ||||||||||
W |
| ||||||||||
W |
|
||||||||||
W |
| ||||||||||
W |
| ||||||||||
Execution | Data transfer between the FDD and main system | ||||||||||
Result | R |
|
Status information after command execution | ||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
Sector ID information after command execution | |||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
WRITE DELETED DATA | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Phase | R/W | Data Bus | Remarks | ||||||||
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||||
Command | W | MT | MFM | 0 | 0 | 1 | 0 | 0 | 1 | Command Codes | |
W | 0 | 0 | 0 | 0 | 0 | HDS | DS1 | DS0 | |||
W |
|
Sector ID Information prior to command execution | |||||||||
W |
| ||||||||||
W |
| ||||||||||
W |
| ||||||||||
W |
|
||||||||||
W |
| ||||||||||
W |
| ||||||||||
Execution | Data transfer between the FDD and main system | ||||||||||
Result | R |
|
Status information after command execution | ||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
Sector ID information after command execution | |||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
READ A TRACK | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Phase | R/W | Data Bus | Remarks | ||||||||
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||||
Command | W | 0 | MFM | SK | 0 | 0 | 0 | 1 | 0 | Command Codes | |
W | 0 | 0 | 0 | 0 | 0 | HDS | DS1 | DS0 | |||
W |
|
Sector ID Information prior to command execution | |||||||||
W |
| ||||||||||
W |
| ||||||||||
W |
| ||||||||||
W |
|
||||||||||
W |
| ||||||||||
W |
| ||||||||||
Execution | Data transfer between the FDD and main system FDC reads all of cylinders contents from index hole to EOT | ||||||||||
Result | R |
|
Status information after command execution | ||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
Sector ID information after command execution | |||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
READ ID | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Phase | R/W | Data Bus | Remarks | ||||||||
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||||
Command | W | 0 | MFM | 0 | 0 | 1 | 0 | 1 | 0 | Command Codes | |
W | 0 | 0 | 0 | 0 | 0 | HDS | DS1 | DS0 | |||
Execution | The first correct ID information on the cylinder is stored in Data Register | ||||||||||
Result | R |
|
Status information after command execution | ||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
Sector ID information during Execution Phase | |||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
FORMAT A TRACK | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Phase | R/W | Data Bus | Remarks | ||||||||
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||||
Command | W | 0 | MFM | 0 | 0 | 1 | 1 | 0 | 1 | Command Codes | |
W | 0 | 0 | 0 | 0 | 0 | HDS | DS1 | DS0 | |||
W |
|
Bytes/sector | |||||||||
W |
|
Sectors/Cylinder | |||||||||
W |
|
Gap 3 | |||||||||
W |
|
Filler Byte | |||||||||
Execution | FDC formats an entire cylinder | ||||||||||
Result | R |
|
Status information after command execution | ||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
In this case the ID information has no meaning | |||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
SCAN LOW | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Phase | R/W | Data Bus | Remarks | ||||||||
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||||
Command | W | MT | MFM | SK | 1 | 0 | 0 | 0 | 1 | Command Codes | |
W | 0 | 0 | 0 | 0 | 0 | HDS | DS1 | DS0 | |||
W |
|
Sector ID Information prior to command execution | |||||||||
W |
| ||||||||||
W |
| ||||||||||
W |
| ||||||||||
W |
|
||||||||||
W |
|
||||||||||
W |
|
||||||||||
Execution | Data compared between the FDD and main system | ||||||||||
Result | R |
|
Status information after command execution | ||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
Sector ID information after command execution | |||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
SCAN LOW OR EQUAL | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Phase | R/W | Data Bus | Remarks | ||||||||
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||||
Command | W | MT | MFM | SK | 1 | 1 | 0 | 0 | 1 | Command Codes | |
W | 0 | 0 | 0 | 0 | 0 | HDS | DS1 | DS0 | |||
W |
|
Sector ID Information prior to command execution | |||||||||
W |
| ||||||||||
W |
| ||||||||||
W |
| ||||||||||
W |
|
||||||||||
W |
|
||||||||||
W |
|
||||||||||
Execution | Data compared between the FDD and main system | ||||||||||
Result | R |
|
Status information after command execution | ||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
Sector ID information after command execution | |||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
SCAN HIGH OR EQUAL | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Phase | R/W | Data Bus | Remarks | ||||||||
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||||
Command | W | MT | MFM | SK | 1 | 1 | 1 | 0 | 1 | Command Codes | |
W | 0 | 0 | 0 | 0 | 0 | HDS | DS1 | DS0 | |||
W |
|
Sector ID Information prior to command execution | |||||||||
W |
| ||||||||||
W |
| ||||||||||
W |
| ||||||||||
W |
|
||||||||||
W |
|
||||||||||
W |
|
||||||||||
Execution | Data compared between the FDD and main system | ||||||||||
Result | R |
|
Status information after command execution | ||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
Sector ID information after command execution | |||||||||
R |
| ||||||||||
R |
| ||||||||||
R |
|
RECALIBRATE | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Phase | R/W | Data Bus | Remarks | ||||||||
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||||
Command | W | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | Command Codes | |
W | 0 | 0 | 0 | 0 | 0 | 0 | DS1 | DS0 | |||
Execution | Head retracked to track 0 |
SENSE INTERRUPT STATUS | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Phase | R/W | Data Bus | Remarks | ||||||||
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||||
Command | W | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | Command Codes | |
Result | R |
|
Status information at the end of each seek operation about the FDC | ||||||||
R |
|
SPECIFY | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Phase | R/W | Data Bus | Remarks | ||||||||
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||||
Command | W | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | Command Codes | |
W |
|
| |||||||||
W |
|
ND |
SENSE DRIVE STATUS | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Phase | R/W | Data Bus | Remarks | ||||||||
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||||
Command | W | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | Command Codes | |
W | 0 | 0 | 0 | 0 | 0 | HDS | DS1 | DS0 | |||
Result | R |
|
Status information about FDD |
SEEK | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Phase | R/W | Data Bus | Remarks | ||||||||
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||||
Command | W | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | Command Codes | |
W | 0 | 0 | 0 | 0 | 0 | HDS | DS1 | DS0 | |||
W |
| ||||||||||
Execution | Head is positioned over proper Cylinder on diskette |
INVALID | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Phase | R/W | Data Bus | Remarks | ||||||||
D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | ||||
Command | W |
|
Invalid command codes (NoOp - FDC goes into standby state) | ||||||||
Result | R |
|
ST0=80H |
SYMBOL | NAME | DESCRIPTION |
---|---|---|
A0 | Address Line 0 | A0 controls selection of Main Status Register (A0=0) or Data Register (A0=1) |
C | Cylinder Number | C stands for the current selected Cylinder track number 0 through 76 of the medium |
D | Data | D stands for the data pattern which is going to be written into a Sector |
D7--D0 | Data bus | 8-bit Data Bus where D7 is the most significant bit, and D0 is the least significant bit. |
DS0,DS1 | Drive Select | DS stands for a select drive number 0 or 1 |
DTL | Data Length | When N is defined as 00, DTL stands for the data length which users are going to read out or write into the sector. |
EOT | End Of Track | EOT stands for the final Sector number of a Cylinder |
GPL | Gap Length | GPL stands for the length of Gap 3 (spacing between sectors excluding VCO Sync field) |
H | Head Address | H stands for head number 0 or 1, as specified in the ID field |
HDS | Head Select | HDS stands for a selected head number 0 or 1 (H=HDS in all command words) |
HLT | Head Load Time | HLT stands for the head load time in the FDD (2 to 254ms in 2ms increments) |
HUT | Head Unload Time | HUT stands for the head unload time after a read or write operation has occured (16 to 240ms in 16ms increments) |
MFM | FM or MFM Mode | If MF is low, FM mode is selected and if it is high, MFM mode is selected. |
MT | Multi-track | If MT is high, a multi-track operation is to be performed (a cylinder under both HD0 and HD1 will be read or written) |
N | Number | N stands for the number of data bytes written in a sector |
NCN | New Cylinder Number | NCN stands for a new Cylinder Number which is going to be reached as a result of the Seek operation. Desired Position of head. |
ND | Non-DMA Mode | ND stands for operation in the Non-DMA mode |
PCN | Present Cylinder No. | PCN stands for the Cylinder number at the completion of SENSE INTERRUPT STATUS Command. Position of head at present time. |
R | Record | R stands for the Sector Number which will be read or written. |
R/W | Read/Write | R/W stands for either Read (R) or Write (W) signal. |
SC | Sector | SC indicates the number of sectors per track |
SK | Skip | SK stands for Skip Deleted Data Address Mark |
SRT | Step Rate Time | SRT stands for the Stepping Rate for the FDD (1 to 16ms in 1ms increments). The same Stepping Rate applies to all drives (F=1ms, E=2ms, etc). |
ST0,ST1,ST2,ST3 | Status 0,Status 1,Status 2,Status 3 | ST0-3 stand for one of four registers which store the status information after a command has been executed. This information is available during the result phase after command execution. These registers should not be confused with the Main Status Register (selected by A0=0). ST0-3 may be read only after a command has been executed and contain information relevant to that particular command. |
STP | During a scan operation, if STP=1 the data in contiguous sectors is compared byte-by-byte with data sent from the processor (or DMA) and if STP=2 then alternate sectors are read and compared. |
Multi-Track MT | MFM/FM | Bytes/Sector N | Maximum Transfer Capacity (Bytes/Sector)(Number of Sectors) | Final Sector Read from Diskette |
---|---|---|---|---|
0 | 0 | 0 | (128)(26)=3,328 | 26 at Side 0 or 26 at Side 1 |
0 | 1 | 1 | (256)(26)=6,656 | |
1 | 0 | 0 | (128)(52)=6,656 | 26 at Side 1 |
1 | 1 | 1 | (256)(52)=13,312 | |
0 | 0 | 1 | (256)(15)=3,840 | 15 at Side 0 or 15 at Side 1 |
0 | 1 | 2 | (512)(15)=7,680 | |
1 | 0 | 1 | (256)(30)=7,680 | 15 at Side 1 |
1 | 1 | 2 | (512)(30)=15,360 | |
0 | 0 | 2 | (512)(8)=4,096 | 8 at Side 0 or 8 at Side 1 |
0 | 1 | 3 | (1024)(8)=8,192 | |
1 | 0 | 2 | (512)(16)=8,192 | 8 at Side 1 |
1 | 1 | 3 | (1024)(16)=16,384 |
MT | EOT | Final Sector Transfered to Processor | ID Information at Result Phase | |||
---|---|---|---|---|---|---|
C | H | R | N | |||
0 | 1a | Sector 1 to 25 at Side 0 | NC | NC | R+1 | NC |
0f | Sector 1 to 24 at Side 0 | |||||
08 | Sector 1 to 7 at Side 0 | |||||
1a | Sector 26 at Side 0 | C+1 | NC | R=01 | NC | |
0f | Sector 15 at Side 0 | |||||
08 | Sector 8 at Side 0 | |||||
1a | Sector 1 to 25 at Side 1 | NC | NC | R+1 | NC | |
0f | Sector 1 to 14 at Side 1 | |||||
08 | Sector 1 to 7 at Side 1 | |||||
1a | Sector 26 at Side 1 | C+1 | NC | R=01 | NC | |
0f | Sector 15 at Side 1 | |||||
08 | Sector 8 at Side 1 | |||||
1 | 1a | Sector 1 to 25 at Side 0 | NC | NC | R+1 | NC |
0f | Sector 1 to 14 at Side 0 | |||||
08 | Sector 1 to 7 at Side 0 | |||||
1a | Sector 26 at Side 0 | NC | LSB | R=01 | NC | |
0f | Sector 15 at side 0 | |||||
08 | Sector 8 at side 0 | |||||
1a | Sector 1 to 25 at Side 1 | NC | NC | R+1 | NC | |
0f | Sector 1 to 14 at Side 1 | |||||
08 | Sector 1 to 7 at Side 1 | |||||
1a | Sector 26 at Side 1 | C+1 | LSB | R=01 | NC | |
0f | Sector 15 at Side 1 | |||||
08 | Sector 7 at side 1 |
FORMAT | SECTOR SIZE | N | SC | GPL¹ | GPL² | REMARKS |
---|---|---|---|---|---|---|
FM Mode | 128 bytes/sector | 0 | 1Ah | 07h | 1Bh | IBM Diskette 1 |
256 | 1 | 0Fh | 0Eh | 2Ah | IBM Diskette 2 | |
512 | 2 | 08 | 1Bh | 3Ah | ||
FM Mode | 1024 | 3 | 4 | - | - | |
2048 | 4 | 2 | - | - | ||
4096 | 5 | 1 | - | - | ||
MFM Mode | 256 | 1 | 1Ah | 0Eh | 36h | IBM Diskette 2D |
512 | 2 | 0Fh | 1Bh | 54h | ||
1024 | 3 | 08 | 35h | 74h | IBM Diskette 2D | |
2048 | 4 | 4 | - | - | ||
4096 | 5 | 2 | - | - | ||
8192 | 6 | 1 | - | - |
Command | Status Register 2 | Comments | |
---|---|---|---|
Bit 2 = SN | Bit 3 = SH | ||
Scan Equal | 0 | 1 | DFdd=DProcessor |
1 | 0 | DFdd<>DProcessor | |
Scan Low or Equal | 0 | 1 | DFdd=DProcessor |
0 | 0 | DFdd<DProcessor | |
1 | 0 | DFdd>DProcessor (not <=) | |
Scan High or Equal | 0 | 1 | DFdd=DProcessor |
0 | 0 | DFdd>DProcessor | |
1 | 0 | DFdd<DProcessor (not >=) |
SEEK END | INTERRUPT CODE | CAUSE | |
---|---|---|---|
BIT 5 | BIT 6 | BIT 7 | |
0 | 1 | 1 | Ready Line Changed state, either polarity |
1 | 0 | 0 | Normal Termination of Seek or Recalibrate Command |
1 | 1 | 0 | Abnormal Termination of Seek or Recalibration command |
Bit No. | Name | Symbol | Description |
---|---|---|---|
D7,D6 | Interrupt Code | IC | |
D7=0 and D6=0; Normal Termination of Command (NT), Command was completed and properly executed. | |||
D7=0 and D6=1; Abnormal Termination of Command (AT), Execution of Command was started, but was not successfully completed. | |||
D7=1 and D6=0; Invalid Command issued (IC), Command which was issued was never started. | |||
D7=1 and D6=1; Abnormal Termination because during command execution the ready signal from the FDD changed state. | |||
D5 | Seek End | SE | When the FDC completes the SEEK command, this flag is set to 1 (high). |
D4 | Equipment Check | EC | If a fault signal is received from the FDD, or if the Track 0 signal fails to occur after 77 Step Pulses (Recalibrate Command) then this flag is set. |
D3 | Not Ready | NR | When the FDD is in the not-ready state and a read or write command is issued, this flag is set. If a read or write command is issued to Side 1 of a single sided drive then this flag is set. |
D2 | Head Address | HD | This flag is used to indicate the state of the head at interrupt. |
D1 | Unit Select 1 | US 1 | These flags are used to indicate the drive unit number at interrupt. |
D0 | Unit Select 0 | US 0 |
Bit No. | Name | Symbol | Description |
---|---|---|---|
D7 | End of Cylinder | EN | When the FDC tries to access a sector beyond the final Sector of a Cylinder, this flag is set. |
D6 | Not used. This bit is always 0 (low). | ||
D5 | Data Error | DE | When the FDC detects a CRC error in either the ID field or the data field, this flag is set. |
D4 | Over Run | OR | If the FDC is not serviced by the main systems during data transfers within a certain time interval, this flag is set. |
D3 | Not used. This bit always 0 (low). | ||
D2 | No Data | ND | |
During execution of READ DATA, WRITE DELETED DATA or SCAN Command, if the FDC cannot find the Sector specified in the IDR register, then this flag is set. | |||
During executing the READ ID Command, if the FDC cannot read the ID field without an error, then this flag is set. | |||
During execution of the READ A Cylinder Command, if the starting sector cannot be found then this flag is set. | |||
D1 | Not Writeable | NW | During execution of WRITE DATA, WRITE DELETED DATA or Format a Cylinder Command, if the FDC detects a write protect signal from the FDD, then this bit is set. |
D0 | Missing Address Mark | MA | |
If the FDC cannot detect the ID Address Mark after encountering the index hole twice, then this flag is set. | |||
If the FDC cannot detect the Data Address Mark or the Deleyed Data Address Mark, this flag is set. Also at the same time, the MD (Missing Address Mark in Data Field) of Status Register is set. |
Bit No. | Name | Symbol | Description |
---|---|---|---|
D7 | Not used. This bit is always 0 (low). | ||
D6 | Control Mark | CM | During executing the READ DATA or SCAN Command, if the FDC encounters a Sector which contains a Deleted Data Address Mark, this flag is set. |
D5 | Data Error in Data Field | DD | If the FDC detects a CRC error in the data field then this flag is set. |
D4 | Wrong Cylinder | WC | This bit is related with the ND bit, and when the contents of C on the medium is different from that stored in the IDR, this flag is set. |
D3 | Scan Equal Hit | SH | During execution, the SCAN Command, if the condition of the "equal" is satisfied, then this flag is set. |
D2 | Scan Not Satisfied | SN | During executing the SCAN Command, if the FDC cannot find a sector on the cylinder which meets the condition, then this flag is set. |
D1 | Bad Cylinder | BC | This bit is related with the ND bit and when the contents of C on the mdeium is different from that stored in the IDR and the content of C is &FF, then this flag is set. |
D0 | Missing Address Mark in Data Field | MD | When data is read from the medium, if the FDC cannot find a Data Address Mark or Deleted Data Address Mark, then this flag is set. |
Bit No. | Name | Symbol | Description |
---|---|---|---|
D7 | Fault | FT | This bit is used tto indicate the status of the Fault signal from the FDD. |
D6 | Write Protected | WP | This bit is used to indicate the status of the Write Protected signal from the FDD. |
D5 | Ready | RDY | This bit is used to indicate the status of the Ready signal from the FDD. |
D4 | Track 0 | T0 | This bit is used to indicate the status of the Track 0 signal from the FDD. |
D3 | Two Side | TS | This bit is used to indicate the status of the Two Side signal from the FDD. |
D2 | Head Address | HD | This bit is used to indicate the status of the Side Select signal to the FDD. |
D1 | Unit Select 1 | US 1 | This bit is used to indicate the status of the Unit Select 1 signal to the FDD. |
D0 | Unit Select 0 | US 0 | This bit is used to indicate the status of the Unit Select 0 signal to the FDD. |